package com.bingxue.edu.management.system.model.req;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

/**
 * 创建或修改社交账户信息
 *
 * @author panbo
 * @since 2024/07/24 18:12
 */
@Data
@Schema(description = "创建或修改社交账户信息")
public class SocialAccountReq {

    @Schema(description = "用户类型")
    @NotBlank(message = "用户类型不能为空")
    @Length(max = 32, message = "用户类型长度不能超过 {max} 个字符")
    private String userType;

    @Schema(description = "用户id")
    @NotBlank(message = "用户id不能为空")
    @Length(max = 32, message = "用户id长度不能超过 {max} 个字符")
    private String userId;

    @Schema(description = "来源")
    @NotBlank(message = "来源不能为空")
    @Length(max = 32, message = "来源长度不能超过 {max} 个字符")
    private String source;

    @Schema(description = "开放id")
    @NotBlank(message = "开放id不能为空")
    @Length(max = 255, message = "开放id长度不能超过 {max} 个字符")
    private String openId;

    @Schema(description = "附加信息")
    @Length(max = 900, message = "附加信息长度不能超过 {max} 个字符")
    private String metadata;
}
